# menu.py
import tkinter as tk
from tkinter import Menu, messagebox


def create_menu_interface():
    """
    创建带菜单的图形化界面
    """
    # 创建主窗口
    root = tk.Tk()
    root.title("图形化菜单界面")
    root.geometry("600x400")

    # 创建菜单栏
    menubar = Menu(root)
    root.config(menu=menubar)

    # 创建文件菜单
    file_menu = Menu(menubar, tearoff=0)
    menubar.add_cascade(label="文件", menu=file_menu)
    file_menu.add_command(label="新建", command=lambda: show_info("新建文件"))
    file_menu.add_command(label="打开", command=lambda: show_info("打开文件"))
    file_menu.add_command(label="保存", command=lambda: show_info("保存文件"))
    file_menu.add_separator()
    file_menu.add_command(label="退出", command=root.quit)

    # 创建编辑菜单
    edit_menu = Menu(menubar, tearoff=0)
    menubar.add_cascade(label="编辑", menu=edit_menu)
    edit_menu.add_command(label="复制", command=lambda: show_info("复制内容"))
    edit_menu.add_command(label="粘贴", command=lambda: show_info("粘贴内容"))
    edit_menu.add_command(label="剪切", command=lambda: show_info("剪切内容"))

    # 创建帮助菜单
    help_menu = Menu(menubar, tearoff=0)
    menubar.add_cascade(label="帮助", menu=help_menu)
    help_menu.add_command(label="关于", command=show_about)

    # 添加界面内容
    content_label = tk.Label(root, text="欢迎使用图形化菜单界面", font=("Arial", 16))
    content_label.pack(pady=50)

    info_text = tk.Text(root, height=10, width=60)
    info_text.pack(pady=20)
    info_text.insert(tk.END, "这是一个带有菜单栏的Tkinter图形界面示例。\n")
    info_text.insert(tk.END, "您可以点击顶部菜单项来执行各种操作。")

    return root


def show_info(message):
    """
    显示信息提示
    """
    messagebox.showinfo("提示", message)


def show_about():
    """
    显示关于信息
    """
    messagebox.showinfo("关于", "图形化菜单界面 v1.0\n这是一个Tkinter菜单示例程序")


if __name__ == "__main__":
    # 创建并运行界面
    app = create_menu_interface()
    app.mainloop()
